Stateful vs. Stateless Applications: What's the Difference